package cn.ilikes.tools.hbase.jpa;

import org.slf4j.Logger;

import cn.ilikes.tools.hbase.jpa.clazzes.JPAHbaseSysClassLoader;
import cn.ilikes.tools.hbase.jpa.metadatas.IEntityMetaDataFactory;
import cn.ilikes.tools.hbase.jpa.metadatas.IORMMetaDataFactory;
import cn.ilikes.tools.hbase.jpa.metadatas.JPAHBasePersistenceUnitMetadata;
import cn.ilikes.tools.logs.Loggerfactory;

/**
 * 创建 JPA Hbase Persisten Unit Env .
 * 
 * @author fack
 * 
 */
public class JPAHbasePersistenUnitEnv {

	private static Logger logger = Loggerfactory.instance(JPAHbaseSystemEnv.class);

	private String persistenceUnitsName;

	private boolean initComplete = false;

	public JPAHbasePersistenUnitEnv(String persistenceUnitsName, JPAHbaseSystemEnv jPAHbaseSystemEnv) {
		super();
		this.persistenceUnitsName = persistenceUnitsName;
		this.jPAHbaseSystemEnv = jPAHbaseSystemEnv;
	}

	private JPAHbaseSysClassLoader hbaseSysClassLoader;

	private JPAHBasePersistenceUnitMetadata hBasePersistenceUnitMetadata;

	private IEntityMetaDataFactory entityMetaDataFactory;

	private JPAHbaseSystemEnv jPAHbaseSystemEnv;

	private IORMMetaDataFactory ormetaDataFactory;

	public JPAHBasePersistenceUnitMetadata gethBasePersistenceUnitMetadata() {
		return hBasePersistenceUnitMetadata;
	}

	public void sethBasePersistenceUnitMetadata(JPAHBasePersistenceUnitMetadata hBasePersistenceUnitMetadata) {
		this.hBasePersistenceUnitMetadata = hBasePersistenceUnitMetadata;
	}

	public String getPersistenceUnitsName() {
		return persistenceUnitsName;
	}

	public void setPersistenceUnitsName(String persistenceUnitsName) {
		this.persistenceUnitsName = persistenceUnitsName;
	}

	public IEntityMetaDataFactory getEntityMetaDataFactory() {

		return entityMetaDataFactory;
	}

	public void setEntityMetaDataFactory(IEntityMetaDataFactory entityMetaDataFactory) {
		this.entityMetaDataFactory = entityMetaDataFactory;
	}

	public JPAHbaseSystemEnv getjPAHbaseSystemEnv() {
		return jPAHbaseSystemEnv;
	}

	public void setjPAHbaseSystemEnv(JPAHbaseSystemEnv jPAHbaseSystemEnv) {
		this.jPAHbaseSystemEnv = jPAHbaseSystemEnv;
	}

	public boolean isInitComplete() {
		return initComplete;
	}

	public void setInitComplete(boolean initComplete) {
		this.initComplete = initComplete;
	}

	public IORMMetaDataFactory getOrmetaDataFactory() {
		return ormetaDataFactory;
	}

	public void setOrmetaDataFactory(IORMMetaDataFactory ormetaDataFactory) {
		this.ormetaDataFactory = ormetaDataFactory;
	}

	public JPAHbaseSysClassLoader getHbaseSysClassLoader() {
		return hbaseSysClassLoader;
	}

	public void setHbaseSysClassLoader(JPAHbaseSysClassLoader hbaseSysClassLoader) {
		this.hbaseSysClassLoader = hbaseSysClassLoader;
	}

}
